-
Notifications
You must be signed in to change notification settings - Fork 8.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[WIP] [Monitoring] APM UI specifics #22508
[WIP] [Monitoring] APM UI specifics #22508
Conversation
…emoved from the selection. (elastic#22242)
…ing messages (elastic#22243) * Update buildHierarchicalData test.
* Rebuild modulePath correctly if on Windows * Change how we find dashboard add panel is loaded * Add and use find.byClassName instead of remote * cleanup a comment
elastic#22124) translate tutorials(osquery_logs, php_fpm_metrics, postgresql_logs, postgresql_metrics, prometheus_metrics, rabbitmq_metrics, redis_logs)
elastic#22122) translate tutorials(kafka_logs, kafka_metrics, kibana_metrics, kubernetes_metrics, logstash_logs, logstash_metrics, memcached_metrics)
elastic#22121) translate tutorials(elasticsearch_metrics, etcd_metrics, golang_metrics, haprozy_metrics, iis_logs)
Upgrades EUI from 3.6.1 => 3.7.0
@graphaelli Definitely missed that. Should be updated now |
Thanks @chrisronline. Something is a bit off with the instance view - looks like there is no padding between the graphs (instance view on left, overview on right): |
💔 Build Failed |
That's actually consistent with beats, but I can add the padding into the instance page to make it look better |
💔 Build Failed |
Awesome! I think that looks much better. Perhaps beats wants to consider applying the same update. /cc @ruflin |
LGTM 🎉 🎉 🎉
…stic#22814) This PR addresses parts of elastic#22642: - It gets rid of the use of var that = this;. - dragSelect's action strings are moved to a constants file. - Adds jest tests for the ExplorerSwimlane component. This also fixes the following bugs: - The way we subscribe listeners to the events of the dragSelect library could result in the same event being triggered multiple times. This in turn could cause race conditions when on each event new data gets fetched but in between angular's scope gets updated and could end up in a non-intended way. The result of this were view-by swimlanes not updating correctly or anomaly charts showing non-related charts. This PR fixes it by filtering out consecutive swimlane click events. - When the angular based chart container wrapper directive gets destroyed/re-esetup when using the job pick, it missed unmounting the react component, it didn't trigger componentWillUnmount()and didn't unsubscribe from dragSelectListener.
…ic#22379) Allows Kibana users to configure the max_concurrent_shard_requests param used by Kibana when sending _msearch requests. Exposes the config as an advanced setting. By default we won't send the param at all, relying on the ES default instead.
…lastic#22904) The `deepFreeze()` function used by `core.injectedMetadata` uses a recursive type definition to indicate that all of the child types within the passed argument become readonly, which works fine for objects but represents arrays as objects instead of using the `ReadonlyArray<>` type. This PR fixes the type definition to use a `RecursiveReadonlyArray<>` type that properly represents arrays with their methods like `push()`, and iterates into the array properly to propagate `ReadOnly<>`, as proven by the tests.
* conditionalize Monitoring tests for Cloud testing * make security_page/login wait * revert these files from another PR * revert these files from another PR
…#21505) * Default to chromium and add deprecation warning for phantom. * use int, not float
* migrate reporting top nav to sharing menu * pass share extensions to visualize share menu * start creating the reporting panel component * add buttons * generate report generatation URL * require save if url changes * add print layout UI * putting it all together - generate reports from share context menu * ensure copy button fills entire menu width * inject job params functionallity * refactor print layout out of ReportingContentPanel * CSV report generation * disable report generation when app is dirty * update URL when window is resized * remove all the old stuff * clean up CSV report register provider * fix typescript errors * fix functional retests * remove failure_debug folder * close popover when generate button clicked, more work on functional tests * set size on button and text, do not use EuiFormRow * use ReactElement type * move ShareContextMenuExtensionsRegistryProvider to ui/share and create interfaces for registy * strictor typing, do not use hard coded object type name * move registry files to typescript * remove destructuring in the interface * convert createReportingJob to async function, remove unneeded comment
- The aim of this is to more clearly visualize how the timerange of the cell selected in the swimlane relates to the time span shown in the charts. - The most important change is that the vertical date axis ticks no longer are randomly positioned by d3. Instead they are aligned with the cell interval of the swimlane. This way, the date information shown in the swimlane tooltip will always align with the date tick shown left of the emphasized area in the chart. - The highlighted area now features a gray rounded border to resemble the styling of the selected cell in the swimlane. - The chart also fixes where to long chart headers would wrap the "View" link to a new line. - The x/y axis labels blackness has been reduced to reduce emphasis on the labels.
💔 Build Failed |
Continuation of #22453
Depends on elastic/elasticsearch#33286
This PR introduces a monitoring UI for monitoring APM.
TODO
Testing
See this comment for how to get the apm environment running with this PR.
Metrics
Here is a list of what we are the visuals in place. They will most likely appear on both the instance and overview page.
Total Events
The difference between the
min
andmax
ofbeats_stats.metrics.libbeat.pipeline.events.total
Bytes Sent
The difference between the
min
andmax
ofbeats_stats.metrics.libbeat.output.write.bytes
Servers
The number of unique uuids we have (or, the number of different apm server instances)
Last Event
The timestamp of the last monitoring document where
beats_stats.metrics.libbeat.output.events.acked > 0
CPU Utilization
graphBased off:
beats_stats.metrics.beat.cpu.total.value
System Load
graphBased off:
beats_stats.metrics.system.load.1
beats_stats.metrics.system.load.5
beats_stats.metrics.system.load.15
Memory (MB)
graphBased off:
beats_stats.metrics.beat.memstats.gc_next
beats_stats.metrics.beat.memstats.memory_total
beats_stats.metrics.beat.memstats.memory_alloc
beats_stats.metrics.beat.memstats.rss
Requests (/m)
graphBased off:
beats_stats.metrics.apm-server.server.request.count
Incoming Requests Size (KB)
graphBased off:
beats_stats.metrics.apm-server.decoder.deflate.content-length
beats_stats.metrics.apm-server.decoder.gzip.content-length
beats_stats.metrics.apm-server.decoder.uncompressed.content-length
.Transformations (/m)
graphBased off:
beats_stats.metrics.apm-server.processor.transaction.transformations
beats_stats.metrics.apm-server.processor.span.transformations
beats_stats.metrics.apm-server.processor.error.transformations
beats_stats.metrics.apm-server.processor.metric.transformations
Output Events Rate (/m)
graphBased off:
beats_stats.metrics.libbeat.output.events.total
beats_stats.metrics.libbeat.output.events.active
beats_stats.metrics.libbeat.output.events.acked
We should expect to see the
Total
andAcked
as nearly equivalent lines.Output Failed Events Rate (/m)
graphBased off:
beats_stats.metrics.libbeat.output.events.failed
,beats_stats.metrics.libbeat.output.events.dropped
Response Count (/m)
graphBased off:
beats_stats.metrics.apm-server.server.response.valid.*
Response Errors (/m)
graphBased off:
beats_stats.metrics.apm-server.server.response.errors.*